Clustering and classification employing softmax function including efficient bounds

ABSTRACT

A function optimization method includes the operations of: constructing an upper bound using a double majorization bounding process to a sum-of-exponentials function including a summation of exponentials of the form 
     
       
         
           
             
               
                 ∑ 
                 
                   k 
                   = 
                   1 
                 
                 K 
               
                
               
                  
                 
                   
                     β 
                     k 
                     T 
                   
                    
                   x 
                 
               
             
             ; 
           
         
       
     
     optimizing the constructed upper bound respective to parameters β to generate optimized parameters β; and outputting the optimized sum-of-exponentials function represented at least by the optimized parameters β. An inference process includes the operations of: invoking the function optimization method respective to a softmax function constrained by discrete observations y defining categorization observation conditioned by continuous variables x representing at least one input object; and applying the optimized softmax function output by the invocation of the softmax function optimization method to the continuous variables x representing at least one input object to generate classification probabilities.

BACKGROUND

The following relates to the information processing arts and related arts.

The softmax function is the extension of the sigmoid function for more than two variables. The softmax function has the form:

$\begin{matrix} {y_{n} = {\frac{^{x_{n}}}{\sum\limits_{k = 1}^{K}^{x_{k}}}.}} & (1) \end{matrix}$

The denominator is a sum-of-exponentials function of the form:

$\begin{matrix} {{\sum\limits_{k = 1}^{K}^{x_{k}}},} & (2) \end{matrix}$

where x_(k)εxε

^(K). The softmax function finds application in neural networks, classifiers, and so forth, while the sum-of-exponentials function finds even more diverse application in these fields as well as in statistical thermodynamics (for example, the partition function), quantum mechanics, information science, classification, and so forth. For some applications a log of the sum-of-exponentials function is a more useful formulation.

One application of the softmax function is in the area of inference problems, such as Gaussian process classifiers, Bayesian multiclass logistic regression, and more generally for deterministic approximation of probabilistic models dealing with discrete variables conditioned on continuous variables. Such applications entail computing the expectation of the log-sum-of-exponentials function:

$\begin{matrix} {{\gamma = {E_{Q}\left\lbrack {\log \; {\sum\limits_{k = 1}^{K}^{\beta_{k}^{T}x}}} \right\rbrack}},} & (3) \end{matrix}$

where E_(Q) denotes the expectation for a distribution Q(β) which is the probability density function (pdf) of a given multidimensional distribution in

^(d×K) and x is a vector of

^(d). The expectation can be computed using Monte Carlo simulations, but this can be computationally expensive. Taylor expansion techniques are also known, but tend to provide skewed results when the variance of the pdf Q(β) is large.

Another known approach for computing the expectation is to use an upper bound. In this approach an upper bound on the log-sum-of-exponentials function is identified, from which an estimate of the expectation is obtained. The chosen upper bound should be tight respective to the log-sum-of-exponentials function, and should be computationally advantageous for computing the expectation. For the log-sum-of-exponentials function, a known upper bound having a quadratic form is given by:

$\begin{matrix} {{{\log {\sum\limits_{k = 1}^{K}^{x_{k}}}} \leq {{\sum\limits_{k = 1}^{K}\left( {x_{k} - \chi_{k}} \right)^{2}} - {\frac{1}{K}\left( {\sum\limits_{k = 1}^{K}\left( {x_{k} - \chi_{k}} \right)} \right)} + {\sum\limits_{k = 1}^{K}\frac{\left( {x_{k} - \chi_{k}} \right)^{\chi_{k}}}{\sum\limits_{k^{\prime} = 1}^{K}^{\chi_{k^{\prime}}}}} + {\log {\sum\limits_{k = 1}^{K}^{\chi_{k}}}}}},} & (4) \end{matrix}$

See, e.g., Krishnapuram et al., Sparse multinomial logistic regression: fast algorithms and generalization bounds. IEEE Trans. Pattern Anal. Mach. Intell., 27(6):957-68, 2005; Böhning, Multinomial logistic regression algorithm. Annals of the Institute of Statistical Mathematics, 44(9):197-200, 1992. These quadratic bounds are generally tight. However, they use the worst curvature over the space, which can result in inefficient integrating when using the upper bound.

As a result, the use of the softmax function for inference problems with more than two variables has heretofore been computationally difficult or impossible for many practical inference and classification problems.

BRIEF DESCRIPTION

In some embodiments disclosed as illustrative examples, a storage medium stores instructions executable to implement a sum-of-exponentials function optimization method including the operations of: constructing an upper bound using a double majorization bounding process to a sum-of-exponentials function including at least one summation of exponentials; optimizing the constructed upper bound respective to parameters of the exponentials of the at least one summation of exponentials to generate optimized parameters; and outputting the optimized sum-of-exponentials function represented at least by the optimized parameters.

In some embodiments disclosed as illustrative examples, an inference engine is disclosed comprising a processor programmed to perform an inference process comprising: generating an upper bound by double majorization for a sum-of-exponentials function including at least one summation of exponentials of the form

$\sum\limits_{k = 1}^{K}^{\beta_{k}^{T}x}$

constrained by an input object representation vector and an output classification observation vector; optimizing the upper bound respective to parameters β_(k) of the sum-of-exponentials function; and classifying one or more input objects by applying the sum-of-exponentials function with the optimized parameters β_(k) to said one or more input objects.

In some embodiments disclosed as illustrative examples, a storage medium stores instructions defining a function for optimizing a sum-of-exponentials function including a summation of exponentials of the form

$\sum\limits_{k = 1}^{K}^{\beta_{k}^{T}x}$

by optimization operations comprising: upper bounding the sum of exponentials

$\sum\limits_{k = 1}^{K}^{\beta_{k}^{T}x}$

by a product of sigmoids; upper bounding terms of the form log(1+e^(x)) in the product of sigmoids to generate a double majorization upper bound; minimizing the double majorization upper bound respective to the parameters β to generate optimized parameters β; and outputting the optimized sum-of-exponentials function represented at least by the optimized parameters β.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 illustrates a tables of results discussed in the text.

FIG. 2 diagrammatically shows a Bayesian inference engine.

FIG. 3 illustrates a table of quadratic upper bounds discussed in the text.

DETAILED DESCRIPTION

The log-sum-of-exponentials function has concavity and a suitable upper bound is given by:

$\begin{matrix} {{{\log {\sum\limits_{k = 1}^{K}^{x_{k}}}} \leq {{\varphi {\sum\limits_{k = 1}^{K}^{x_{k}}}} - {\log \; \varphi} - 1}},} & (5) \end{matrix}$

where the equality holds if and only if:

$\begin{matrix} {\varphi = {\left( {\sum\limits_{k = 1}^{K}^{x_{k}}} \right)^{- 1}.}} & (6) \end{matrix}$

Advantageously, the expectation of the right hand side can be readily computed for certain useful distributions since E_(Q)e^(x) ^(k) is the moment-generating function of the distribution Q. To obtain a better local quadratic approximation, a bound for the log-sum of exponentials is generated by a double majorization process comprising: (i) a first majorization operation in which the sum of the exponential is upper bounded by a product of sigmoids; and (ii) a second majorization operation using a standard quadratic bound on log(1+e^(x)) to obtain the final upper bound.

For any xε

^(K) and for any αε

, a product of sigmoids and corresponding bound can be written as follows:

$\begin{matrix} {{{{\prod\limits_{k = 1}^{K}\; \left( {1 + ^{x_{k} - \alpha}} \right)} \leq {\sum\limits_{k = 1}^{K}^{x_{k} - \alpha}}} = {^{- \alpha}{\sum\limits_{k = 1}^{K}^{x_{k}}}}},} & (7) \end{matrix}$

from which can be obtained:

$\begin{matrix} {{{\log {\sum\limits_{k = 1}^{K}^{x_{k}}}} \leq {\alpha + {\sum\limits_{k = 1}^{K}{\log \left( {1 + ^{x_{k} - \alpha}} \right)}}}},} & (8) \end{matrix}$

A property for this bound is that its asymptotes are parallel in most directions. More exactly, by applying the bound to ax where a→∞, the difference between the right and the left part of equation tends to a constant if there exists at least one x_(k) positive and x_(k)≠x_(k′) for all k≠k′. The standard quadratic bound for log(1+e^(x)) is given by:

$\begin{matrix} {{{\log \left( {1 + ^{x}} \right)} \leq {{{\lambda (\xi)}\left( {x^{2} - \xi^{2}} \right)} + \frac{x - \xi}{2} + {\log \left( {1 + ^{\xi}} \right)}}},} & (9) \end{matrix}$

for all ξε

. It is applied inside the sum of Equation (8). For any xε

^(K) and any αε

^(K), and for any ξε[0,∞)^(K) to yield:

$\begin{matrix} {{{\log {\sum\limits_{k = 1}^{K}^{x_{k}}}} \leq {\alpha + {\sum\limits_{k = 1}^{K}\frac{x_{k} - \alpha - \xi_{k}}{2}} + {{\lambda \left( \xi_{k} \right)}\left( {\left( {x_{k} - \alpha} \right)^{2} - \xi_{k}^{2}} \right)} + {\log \left( {1 + ^{\xi_{k}}} \right)}}},} & (10) \\ {\mspace{79mu} {{where} \text{:}}} & \; \\ {\mspace{79mu} {{\lambda \left( \xi_{k} \right)} = {{\frac{1}{2\; \xi}\left\lbrack {\frac{1}{1 + ^{- \xi}} - \frac{1}{2}} \right\rbrack}.}}} & (11) \end{matrix}$

Equations (10) and (11) set forth an upper bound on the log-sum-of-exponentials.

Attention is turned to the illustrative application of estimating the expectation γ of the log-sum-of-exponentials set forth in Equation (3). A variational technique based on the maximization of a lower bound of γ can be used. In the following, the pdf Q(β_(k)) is considered to be a multivariate normal distribution with mean μ_(k) and variance Σ_(k). This illustrative example is readily extended to other multivariate distributions with bounded variances. Using the moment generating function

$\begin{matrix} {{E_{Q}\left\lbrack ^{\beta_{k}^{T}x} \right\rbrack} = ^{{\mu_{k}^{T}x} + {\frac{1}{2}x^{T}\Sigma_{k}\; x}}} & (12) \end{matrix}$

of the multivariate normal distribution, the following bound on the expectation γ is obtained:

$\begin{matrix} {{\gamma = {{E_{Q}\left\lbrack {\log {\sum\limits_{k = 1}^{K}^{\beta_{k}^{T}x}}} \right\rbrack} \leq {{\varphi {\sum\limits_{k = 1}^{K}^{{\mu_{k}^{T}x} + {\frac{1}{2}x^{T}\Sigma_{k}x}}}} - {\log (\varphi)} - 1}}},} & (13) \end{matrix}$

for every φε

^(K). Minimizing the right hand side with respect to φ leads to the upper bound:

$\begin{matrix} {\gamma = {{E_{Q}\left\lbrack {\log {\sum\limits_{k = 1}^{K}^{\beta_{k}^{T}x}}} \right\rbrack} \leq {\log \; {\sum\limits_{k = 1}^{K}^{{\mu_{k}^{T}x} + {\frac{1}{2}x^{T}{\sum\limits_{k}x}}}}}}} & (14) \end{matrix}$

which shows that the bound becomes accurate when the variance of Q is small. The expectation over quadratic bounds gives:

$\begin{matrix} {{\gamma \leq {{\left( {K - 1} \right)x^{T}\overset{\_}{\Sigma}x} + {\sum\limits_{k = 1}^{K}\left( {{\mu_{k}^{T}x} - \chi_{k}} \right)^{2}} - {K\left( {{{\overset{\_}{\mu}}^{T}x} - \overset{\_}{\chi}} \right)}^{2} + {\sum\limits_{k = 1}^{K}\frac{\left( {{\mu_{k}^{T}x} - \chi_{k}} \right)^{\chi_{k}}}{\sum\limits_{k^{\prime} = 1}^{K}^{\chi_{k^{\prime}}}}} + {\log {\sum\limits_{k = 1}^{K}{\; \chi_{k}}}}}},\mspace{79mu} {where}} & (15) \\ {\mspace{85mu} {\overset{\_}{\Sigma} = {\frac{1}{K}{\sum_{k}{\Sigma_{k}.}}}}} & (16) \end{matrix}$

A minimization of the right hand side with respect to χ gives the solution χ_(k)=μ_(k) ^(T)x. At this point, the difference between the expectation γ and its upper bound is at least (K−1)x^(T)Σx. This means that the bound is tight if the distribution lies in a manifold orthogonal to x.

Returning to Equation (10), the following holds:

$\begin{matrix} {{\gamma \leq {{\sum\limits_{k = 1}^{K}{{\lambda \left( \xi_{k} \right)}\left( {{x^{T}\Sigma_{k}x} + \left( {\mu_{k}^{T}x} \right)^{2}} \right)}} + {\left( {\frac{1}{2} - {2\; \alpha \; {\lambda \left( \xi_{k} \right)}}} \right)\mu_{k}^{T}x} + \alpha - {\sum\limits_{k = 1}^{K}\frac{\xi_{k} + \alpha}{2}} + {{\lambda \left( \xi_{k} \right)}\left( {\alpha^{2} - \xi_{k}^{2}} \right)} + {\log \left( {1 + ^{\xi_{k}}} \right)}}},} & (17) \end{matrix}$

The minimization of the upper bound with respect to ξ gives:

ξ_(k) ² =x ^(T)Σ_(h) x+(μ_(k) ^(T) x)²+α²−2αμ_(k) ^(T) x  (18),

for k=1, . . . , K. The minimization with respect to α gives:

$\begin{matrix} {\alpha = {\frac{{\sum\limits_{k = 1}^{K}{{\lambda \left( \xi_{k} \right)}\mu_{k}^{T}x}} + {\frac{1}{2}\left( {\frac{K}{2} - 1} \right)}}{\sum\limits_{k = 1}^{K}{\lambda \left( \xi_{k} \right)}}.}} & (19) \end{matrix}$

Several experiments were performed to compare the approximations based on the log, on the quadratic upper bound for the softmax (see Equation (4)), and the upper bound based on a double majorization as disclosed herein. The table shown in FIG. 1 summarizes the results. For every experiment, a vector xε

^(d) was randomly sampled, a mean μ_(k) according to a standardized normal distribution, and a covariance matrix using a Wishart distribution with identity scale matrix and 10 I_(d) for experiments labeled with var=10. The dimension d of the x vector varied from 2 to 100, the number of classes ranged from K=2 (corresponding to the classical binary case) to K=1000. The Wishart distribution had 100 degrees of freedom and (d+1 in the highly correlated (high corr) case). In the high discrepancy (high disc) case, the vector x has many extreme values: it was generated using a student t distribution with 10 degrees of freedom. In experiments labelled samecov, the covariance of every Q(β_(k)) was the same. A hundred independent replications of the same experience were replicated. Every bound was compared to a Monte-Carlo sample of size 100,000 (its variance was negligible compared to the error of the bound).

With continuing reference to the table shown in FIG. 1, the variance of Q is seen to directly influence the choice of the bounding methods. For small variances, the linear approximation of the log seems to give the best results. For large variances, the bound disclosed herein is substantially more accurate than the other methods. Without being limited to any particular theory of operation, this is believed to be mainly due to the fact that the approximation disclosed herein is asymptotically optimal, so that it is robust to cases where the distribution is not precisely localized. For truly Bayesian models, having a model that is accurate in the high variance cases is advantageous since it enable a correct (that is, not too biased) estimation of the uncertainty. It is noteworthy that the quality of the approximations do not degrades too much when dealing with a large number of classes or high dimensional data. Another item evidenced in the experiments summarized in FIG. 1 is that the quadratic upper bound of the Hessian (which is often used find the MAP solutions of multiclass logistic regression) gives poor results in most of the cases.

With reference to FIG. 2, a Bayesian inference engine 10 employing the illustrative upper bound based on a double majorization is described. The inference engine 10 is suitably embodied by a computer 12 or other digital processing device including a digital processor such as a microprocessor, microcontroller, or so forth and storage. In other embodiments, the inference engine may be embodied by a server including a digital processor and including or having access to digital data storage, such server being suitably accessed via the Internet or a local area network, or by a personal data assistant (PDA) including a digital processor and digital data storage, or so forth. The computer 12 or other digital processing device suitably includes or is operatively connected with one or more user input devices such as an illustrated keyboard 14 for receiving user input to control the inference processing, and further includes or is operatively connected with one or more display devices such as an illustrated display 16 for displaying output generated based on the output of the inference engine. In other embodiments, the input for controlling the inference process is received from another program running previously to or concurrently with the inference engine on the computer 12, or from a network connection, or so forth. Similarly, in other embodiments the output may serve as input to another program running subsequent to or concurrently with the inference engine on the computer 12, or may be transmitted via a network connection, or so forth.

In some embodiments, the disclosed softmax optimization processes, inference engines employing same, and so forth are embodied by a storage medium storing instructions executable (for example, by a digital processor) to implement a softmax function optimization method, inference engine, or so forth. The storage medium may include, for example: a magnetic disk or other magnetic storage medium; an optical disk or other optical storage medium; a random access memory (RAM), read-only memory (ROM), or other electronic memory device or chip or set of operatively interconnected chips; an Internet server from which the stored instructions may be retrieved via the Internet or a local area network; or so forth.

The illustrative Bayesian inference engine 10 employs multinomial logistic regression. A multinomial logistic model is considered, with discrete observations y=(y₁, . . . , y_(n))□{1, . . . , K}^(n) 20 conditioned by continuous variables x=(x₁, . . . , x_(n))ε

^(n×d) 22, such as a vector to be transformed, via a softmax function of the form:

$\begin{matrix} {{P\left( {{y = \left. k \middle| x \right.};\beta} \right)} = {\frac{^{\beta_{k}^{T}x}}{\sum\limits_{k^{\prime} = 1}^{K}^{\beta_{k^{\prime}}^{T}x}}.}} & (20) \end{matrix}$

An initial (that is, not yet optimized) softmax function 24 has the form of Equation (20) with an initial (that is, not yet optimized) transformation matrix β 26. The objective is to optimize the transformation matrix β of the softmax function respective to the constraints 20, 22. As an example of one practical application of the Bayesian inference engine 10, the discrete observations y 20 may be category observations for a text-based document classifier, and the continuous variables x 22 may represent bag-of-words” representations of documents to be classified. In another practical application, the discrete observations y 20 may be category observations for an image classifier, and the continuous variables x 22 may represent features vector representations of images to be classified. These are merely illustrative practical applications, and numerous other applications entailing optimization of parameters 26 of the softmax function 24 constrained by observations 20 conditioned by continuous variables 22 are contemplated.

The Bayesian inference determines values for the transformation matrix elements of the parameters matrix β 26 that optimally satisfy the softmax function 24 under the constraints 20, 22. In other words, it is desired to maximize the posterior distribution P(β|x,y). For any choice of the prior there do not exist a closed form solution for the posterior distribution P(β|x,y). Variational approximations are based on the minimization of KL(Q(β)∥P(β|y,x)) over a class of distributions F_(Q) for which the computation is effective.

With continuing reference to FIG. 2, the problem is solved indirectly by constructing 30 an upper bound based on double majorization and computing 32 a minimum of the upper bound respective to the transformation matrix β in order to obtain an optimized transformation matrix β 34. the problem is equivalent to maximizing the following lower bound L on P(y,x):

$\begin{matrix} \begin{matrix} {{{\log \; P\left( {y,x} \right)} \geq {{E_{Q}\left\lbrack {\log \; {P\left( {y,x,\beta} \right)}} \right\rbrack} - {{KL}\left( {{Q(\beta)}{}{P(\beta)}} \right)}}}:={L\left( {\mu,\Sigma} \right)}} \\ {= {{\sum\limits_{k = 1}^{K}{\sum\limits_{i,{y_{i} = k}}{E_{Q}\left\lbrack {\beta_{k}^{T}x_{i}} \right\rbrack}}} - {\sum\limits_{i = 1}^{n}{E_{Q}\left\lbrack {\log {\sum\limits_{k^{\prime} = 1}^{K}^{\beta_{k^{\prime}}^{T}x_{i}}}} \right\rbrack}} -}} \\ {{{{KL}\left( {{Q(\beta)}{}{P(\beta)}} \right)}.}} \end{matrix} & (21) \end{matrix}$

Using a quadratic bound for the second expectation, a lower bound F(μ,Σ,ξ) of L(μ,Σ) is obtained:

$\begin{matrix} {{F\left( {\mu,\Sigma,\xi} \right)} = {{{- \frac{1}{2}}{\sum\limits_{k = 1}^{K}{{tr}\left( {A_{k}{E_{Q}\left\lbrack {\beta_{k}\beta_{k}^{T}} \right\rbrack}} \right)}}} + {\sum\limits_{k = 1}^{K}{b_{k}^{T}{E_{Q}\left\lbrack \beta_{k} \right\rbrack}}} - {{KL}\left( {{{{Q(\beta)}{}{P(\beta)}} - c},} \right.}}} & (22) \end{matrix}$

where A_(k), b_(k), and c depend on the choice of the quadratic bound. Equation (22) represents the upper bound output by the construction operation 30.

It will be appreciated that it is possible to construct 30 the upper bound as set forth in Equation (22) without actually generating the initial softmax function 24. To illustrate this option, in FIG. 2 the initial softmax function 24 is illustrated using dotted lines to represent that it may optionally be a conceptual element that is not actually generated.

With continuing reference to FIG. 2 and with brief reference to FIG. 3, the terms A_(k), b_(k), and c are given for the quadratic bound (B1) of Equation (4) and for the upper bound (B2) based on a double majorization of Equation (10). For the bound based on double majorization, the terms are:

$\begin{matrix} {{A_{k} = {2\; {\sum\limits_{i}{{\lambda \left( \xi_{ik} \right)}x_{i}x_{i}^{T}}}}},} & (23) \\ {{b_{k} = {\sum\limits_{i}{\left( {y_{ik} - \frac{1}{2} + {2\; \alpha_{i}{\lambda \left( \xi_{ik} \right)}}} \right)x_{i}}}},\text{and}} & (24) \\ {{c = {{2\; {\sum\limits_{i,k}{\alpha_{i}\left( {\frac{K}{2} - 1} \right)}}} + \frac{\xi_{ik}}{2} - {{\lambda \left( \xi_{ik} \right)}\left( {\alpha_{i}^{2} - \xi_{ik}^{2}} \right)} - {\log \left( {1 + ^{\xi_{ik}}} \right)}}},} & (25) \end{matrix}$

With continuing reference to FIG. 2, the upper bound output by the construction operation 30 is minimized in computation operation 32 to generate the optimized transformation matrix 34. Assuming independent Gaussian priors P=N( μ _(k), Σ _(k)) for the parameters β_(k), k=1, . . . , K, the KL-divergence between Gaussians is given by:

$\begin{matrix} {{{{KL}\left( {{Q(\beta)}{}{P(\beta)}} \right)} = {{- \frac{1}{2}}{\sum\limits_{k = 1}^{K}\begin{pmatrix} {{\log \frac{{\overset{\_}{\Sigma}}_{k}}{\Sigma_{k}}} + {{tr}\left( {\Sigma_{k}{\overset{\_}{\Sigma}}_{k}^{- 1}} \right)} +} \\ {{\left( {\mu_{k} - {\overset{\_}{\mu}}_{k}} \right)^{T}{{\overset{\_}{\Sigma}}_{k}^{- 1}\left( {\mu_{k} - {\overset{\_}{\mu}}_{k}} \right)}} - {Kd}} \end{pmatrix}}}},} & (26) \end{matrix}$

so that a closed-form solution is obtained of the maximum of F(μ,Σ,ξ) with respect to μ and Σ:

{circumflex over (Σ)}_(k)=(A _(k)+ Σ _(k) ⁻¹)⁻¹  (27),

and

{circumflex over (μ)}_(k)={circumflex over (Σ)}_(k)(b+ Σ _(k) ⁻¹ μ _(k))  (28).

This gives the updates:

$\begin{matrix} {{{\hat{\Sigma}}_{k}^{- 1} = {{\overset{\_}{\Sigma}}_{k}^{- 1} + {\sum\limits_{i}{2\; {\lambda \left( \xi_{ik} \right)}x_{i}x_{i}^{T}}}}},{and}} & (29) \\ {{\hat{\mu}}_{k} = {{{\hat{\Sigma}}_{k}\left\lbrack {{{\overset{\_}{\Sigma}}_{k}^{- 1}{\overset{\_}{\mu}}_{k}} + {\sum\limits_{i}{\left( {y_{ik} - \frac{1}{2} + {2\; \alpha_{i}{\lambda \left( \xi_{ik} \right)}}} \right)x_{i}}}} \right\rbrack}.}} & (30) \end{matrix}$

The optimized parameters β_(k), k=1, . . . , K 34 are directly computed from the optimized independent Gaussian priors P=N( μ _(k), Σ _(k)). These optimized parameters 34 are then used to generate an optimized softmax function 40, for example by inserting the optimized transformation matrix β 34 into the softmax function of Equation (20). A transformed vector P(y|x) 42 is readily generated by evaluating the optimized softmax function 40 for the input vector 22 to be transformed. For the illustrative practical application in which the continuous variables x 22 represent bag-of-words” representations of documents to be classified, the output transformed vector P(y|x) 42 represents the probabilities of the categories 24 for various documents represented as bags-of-words. In other words, the transformed vector P(y|x) 42 provides the soft classification probabilities for the input documents. In the illustrative practical application in which the continuous variables x 22 represent features vector representations of images, the output transformed vector P(y|x) 42 represents the probabilities of the categories 24 for various images represented by feature vectors. In other words, the transformed vector P(y|x) 42 provides the soft classification probabilities for the images to be classified. Again, these are merely non-limiting illustrative practical applications. The resulting output transformed vector P(y|x) 42 may be used in various ways, such as displaying the classification on the display 16. For example, a “hard” classification may be obtained and displayed by assigning each text document or image the class having the highest probability in P(y|x). Alternatively, a plot of classification probabilities may be generated and displayed suitably coded by color or other distinguishing aspect. In other embodiments, the output transformed vector P(y|x) 42 is not directly displayed, but rather may be used to assign a hard or soft classification to the continuous variables 22 (text documents or images, in the illustrative practical examples) for use in indexing the documents or images in a database or other storage arrangement.

In some applications, it may be desirable to operate on the moment generating function E_(Q)[e^(β) ^(k) ^(T) ^(x)], rather than on the log-sum-of-exponentials. In the case of the bound constructed 30 based on the moment generating function of Equation (12), the result is:

$\begin{matrix} {{{F\left( {\mu,\Sigma,\varphi} \right)} = {{- {\sum\limits_{k = 1}^{K}{\mu_{k}^{T}s_{k}}}} + {\sum\limits_{i = 1}^{n}{\varphi_{i}{\sum\limits_{k = 1}^{K}^{{\mu_{k}^{T}x_{i}} + {\frac{1}{2}x_{i}^{T}{\sum\limits_{k}x_{i}}}}}}} - {\log \left( \varphi_{i} \right)} - n - {{KL}\left( {{Q(\beta)}{}{P(\beta)}} \right)}}},} & (31) \\ {\mspace{79mu} {{where} \text{:}}} & \; \\ {\mspace{79mu} {s_{k} = {\sum\limits_{i,{y_{i} = k}}{x_{i}.}}}} & (32) \end{matrix}$

The minimization 32 with respect to φ is straightforward. For a fixed φ, the objective can be decomposed into a sum of independent functions of (μ_(k),Σ_(k)) that can be maximized independently for k=1, . . . , K. Since the gradient can be computed easily and F is concave with respect to μ and Σ, the minimization and can be done using a standard optimization package. In one suitable approach the reparameterizations φ=a² and Σ=R^(0.5) (R^(0.5))^(T) are used to transform to an unconstrained maximization problem. Alternatively, it is possible to find μ_(k) and Σ_(k) using a fixed point equation. In the case of quadratic bounds, the maximization of this function is done by iteratively maximizing with respect to the variational parameters and (μ,Σ). Every computation is analytical in this case.

As used herein, the terms “optimization”, “minimization”, and the like are intended to encompass both absolute optimization or absolute minimization, and approximate optimization or approximate minimization. For example, in the Bayesian inference engine 10 of FIG. 2, the computing of the minimum of the upper bound may employ an iterative minimization algorithm whose iterations may be terminated based on a stopping criterion at some point before the absolute minimum is obtained. As used herein, this iterative minimization algorithm terminated prior to the absolute minimization computes a minimum of the upper bound, even though it may not be the absolute minimum. Similarly, the optimized transformation matrix 34 optimizes the softmax function respective to the constraints 20, 22, even though it may not be the absolute most optimum matrix for the softmax function respective to the constraints 20, 22. Indeed, since the upper bound is tight but not exactly equal to the softmax function (it is an upper bound and not, in general, an equality) the optimized transformation matrix 34 respective to the upper bound can be expected to be an approximate, but not exact, optimum for the bounded softmax function.

Phraseology such as “of the form” when used respective to mathematical expressions is intended to be broadly construed to encompass the base mathematical expression modified by substantially any substantively insubstantial modification. For example, the softmax function form of Equation (20) may be modified by the addition of scalar constants, scaling constants within the exponential, or so forth, and the softmax function so modified remains of the same form as that of Equation (20).

The illustrated embodiments relate to the softmax function. However, the disclosed techniques are more generally applicable to substantially any sum-of-exponentials function that includes at least one summation of exponentials. The optimization techniques disclosed herein entail constructing an upper bound using a double majorization bounding process to the softmax function or other sum-of-exponentials function including at least one summation of exponentials, and optimizing the constructed upper bound respective to parameters of the exponentials of the at least one summation of exponentials to generate optimized parameters.

It will be appreciated that various of the above-disclosed and other features and functions, or alternatives thereof, may be desirably combined into many other different systems or applications. Also that various presently unforeseen or unanticipated alternatives, modifications, variations or improvements therein may be subsequently made by those skilled in the art which are also intended to be encompassed by the following claims. 

1. A storage medium storing instructions executable to implement a sum-of-exponentials function optimization method including the operations of: constructing an upper bound using a double majorization bounding process to a sum-of-exponentials function including at least one summation of exponentials; optimizing the constructed upper bound respective to parameters of the exponentials of the at least one summation of exponentials to generate optimized parameters; and outputting the optimized sum-of-exponentials function represented at least by the optimized parameters.
 2. The storage medium as set forth in claim 1, wherein the sum-of-exponentials function including at least one summation of exponentials comprises at least one softmax function of the form: $\frac{^{\beta_{k}^{T}x}}{\sum\limits_{k^{\prime} = 1}^{K}^{\beta_{k^{\prime}}^{T}x}}$ and the optimizing comprises: optimizing the constructed upper bound respective to parameters β to generate optimized parameters β.
 3. The storage medium as set forth in claim 2 where the optimized function contains a conditional probability model of outputs yε{1, . . . , K} given inputs xε

^(d) under the form of a softmax function ${P\left( {{y = \left. k \middle| x \right.};\beta} \right)} = {\frac{^{\beta_{k}^{T}x}}{\sum\limits_{k^{\prime} = 1}^{K}^{\beta_{k^{\prime}}^{T}x}}.}$
 4. The storage medium as set forth in claim 1, wherein the summation of exponentials is of the form $\sum\limits_{k = 1}^{K}^{\beta_{k}^{T}x}$ and the operation of constructing an upper bound using a double majorization bounding process comprises first and second majorization processes comprising: upper bounding the summation of exponentials by a product of sigmoid functions; and employing a bound on log(1+e^(x)) in the upper bounding of the summation of exponentials of the form $\sum\limits_{k = 1}^{K}{^{\beta_{k}^{T}x}.}$
 5. The storage medium as set forth in claim 4, wherein the first majorization process generates an upper bound of the form: ${\log {\sum\limits_{k = 1}^{K}^{x_{k}}}} \leq {\alpha + {\sum\limits_{k = 1}^{K}{\log \left( {1 + ^{x_{k} - \alpha}} \right)}}}$ where   α ∈ K .
 6. The storage medium as set forth in claim 5, wherein the second majorization process modifies the upper bound of the form: ${\log {\sum\limits_{k = 1}^{K}^{x_{k}}}} \leq {\alpha + {\sum\limits_{k = 1}^{K}{\log \left( {1 + ^{x_{k} - \alpha}} \right)}}}$ to the form: ${\log {\sum\limits_{k = 1}^{K}^{x_{k}}}} \leq {\alpha + {\sum\limits_{k = 1}^{K}\frac{x_{k} - \alpha - \xi_{x}}{2}} + {{\lambda \left( \xi_{k} \right)}\left( {\left( {x_{k} - \alpha} \right)^{2} - \xi_{k}^{2}} \right)} + {\log \left( {1 + ^{\xi_{k}}} \right)}}$  for   α ∈ K   and   ξ ∈ [ 0 , ∞ ) K   where  : $\mspace{79mu} {{\lambda (\xi)} = {{\frac{1}{2\xi}\left\lbrack {\frac{1}{1 + ^{- \xi}} - \frac{1}{2}} \right\rbrack}.}}$
 7. The storage medium as set forth in claim 1, wherein the summation of exponentials is of the form $\sum\limits_{k = 1}^{K}^{\beta_{k}^{T}x}$ and the operation of constructing an upper bound using a double majorization bounding process comprises constructing an upper bound to an expectation of the sum-of-exponentials function under the form ${E_{Q}\left\lbrack {\sum\limits_{k = 1}^{K}^{\beta_{k}^{T}x}} \right\rbrack},$ into an expectation having the form E_(Q)[e^(β) ^(k) ^(T) ^(x)] where Q(β_(k)) denotes a probability density function (pdf) over the parameters β and E_(Q)[ . . . ] denotes an expectation with respect to Q.
 8. The storage medium as set forth in claim 7, wherein a second majorization process of the double majorization bounding process produces an upper bound on expectation γ of the form $\gamma \leq {{\sum\limits_{k = 1}^{K}{{\lambda \left( \xi_{k} \right)}\left( {{x^{T}\Sigma_{k}x} + \left( {\mu_{x}^{T}x} \right)^{2}} \right)}} + {\left( {\frac{1}{2} - {2{{\alpha\lambda}\left( \xi_{k} \right)}}} \right)\mu_{k}^{T}x} + \alpha - {\sum\limits_{k = 1}^{K}\frac{\xi_{k} + \alpha}{2}} + {{\lambda \left( \xi_{k} \right)}\left( {\alpha^{2} - \xi_{k}^{2}} \right)} + {\log \left( {1 + ^{\xi_{k}}} \right)}}$  for   α ∈ K   and   ξ ∈ [ 0 , ∞ ) K   where  : $\mspace{85mu} {{\lambda \left( \xi_{k} \right)} = {\frac{1}{2\xi}\left\lbrack {\frac{1}{1 + ^{- \xi}} - \frac{1}{2}} \right\rbrack}}$ where μ_(k) is the expectation of β_(k) and Σ_(k) is the expectation of (β_(k)−μ_(k))(β_(k)−μ_(k))^(T).
 9. The storage medium as set forth in claim 1, wherein the storage medium stores further instructions executable to implement an inference method including the operations of: invoking the sum-of-exponentials function optimization method respective to a sum-of-exponentials function constrained by discrete observations y defining categorization observation conditioned by continuous variables x representing at least one input object where y=(y₁, . . . , y_(n))ε{1, . . . , K}^(n) and x=(x₁, . . . , x_(n))ε

^(n×d); and applying the optimized sum-of-exponentials function output by the invocation of the sum-of-exponentials function optimization method to the continuous variables x representing at least one input object to generate classification probabilities.
 10. The storage medium as set forth in claim 9, wherein the continuous variables x represent at least one input text-based document in a bag-of-words representation.
 11. The storage medium as set forth in claim 9, wherein the continuous variables x represent at least one input image in a features vector representation.
 12. An inference engine comprising a processor programmed to perform an inference process comprising: generating an upper bound by double majorization for a sum-of-exponentials function including at least one summation of exponentials of the form $\sum\limits_{k = 1}^{K}^{\beta_{k}^{T}x}$ constrained by an input object representation vector and an output classification observation vector; optimizing the upper bound respective to parameters β_(k) of the sum-of-exponentials function; and classifying one or more input objects by applying the sum-of-exponentials function with the optimized parameters β_(k) to said one or more input objects.
 13. The inference engine as set forth in claim 12, wherein the generating comprises: a first majorization operation comprising upper bounding the summation of exponentials $\sum\limits_{k = 1}^{K}^{\beta_{k}^{T}x}$ by a product of sigmoid functions; and a second majorization operation comprising bounding terms of the form log(1+e^(x)) generated by the first majorization operation.
 14. The inference engine as set forth in claim 12, wherein the generating comprises generating an upper bound by double majorization for an expectation of the sum-of-exponentials function of the form E_(Q)[e^(β) ^(k) ^(T) ^(x)] where x denotes the input object representation vector, Q(β_(k)) denotes a probability density function (pdf) over the parameters β_(k), and E_(Q)[ . . . ] denotes an expectation with respect to Q.
 15. The inference engine as set forth in claim 12, wherein the sum-of-exponentials function is a softmax function.
 16. The inference engine as set forth in claim 12, wherein the input object representation vector includes a bag-of-words representation of at least one text-based document and the classifying performs document classification.
 17. The inference engine as set forth in claim 12, wherein the input object representation vector includes a features vector representation of at least one image and the classifying performs image classification.
 18. A storage medium storing instructions defining a function for optimizing a sum-of-exponentials function including a summation of exponentials of the form $\sum\limits_{k = 1}^{K}^{\beta_{k}^{T}x}$ by optimization operations comprising: upper bounding the sum of exponentials $\sum\limits_{k = 1}^{K}^{\beta_{k}^{T}x}$ by a product of sigmoids; upper bounding terms of the form log(1+e^(x)) in the product of sigmoids to generate a double majorization upper bound; minimizing the double majorization upper bound respective to the parameters β to generate optimized parameters β; and outputting the optimized sum-of-exponentials function represented at least by the optimized parameters β.
 19. The storage medium as set forth in claim 18, wherein the optimization function is configured to optimize a softmax function of the form $\frac{^{\beta_{k}^{T}x}}{\sum\limits_{k^{\prime} = 1}^{K}^{\beta_{k^{\prime}}^{T}x}}.$
 20. The storage medium as set forth in claim 19, wherein the upper bounding of the sum of exponentials by the product of sigmoids generates an upper bound of the form: ${\log {\sum\limits_{k = 1}^{K}^{x_{k}}}} \leq {\alpha + {\sum\limits_{k = 1}^{K}{\log \left( {1 + ^{x_{k} - \alpha}} \right)}}}$ where   α ∈ K ; and the upper bounding terms of the form log(1+e^(x)) in the product of sigmoids generates the double majorization upper bound of the form: ${\log {\sum\limits_{k = 1}^{K}^{x_{k}}}} \leq {\alpha + {\sum\limits_{k = 1}^{K}\frac{x_{k} - \alpha - \xi_{k}}{2}} + {{\lambda \left( \xi_{k} \right)}\left( {\left( {x - \alpha} \right)^{2} - \xi_{k}^{2}} \right)} + {\log \left( {1 + ^{\xi_{k}}} \right)}}$      for  ξ ∈ [0, ∞)^(K)  where: $\mspace{76mu} {{\lambda \left( \xi_{k} \right)} = {{\frac{1}{2\xi}\left\lbrack {\frac{1}{1 + ^{- \xi}} - \frac{1}{2}} \right\rbrack}.}}$
 21. The storage medium as set forth in claim 19, wherein the upper bounding a sum of exponentials by a product of sigmoids comprises upper bounding an expectation of the softmax function of the form E_(Q)[e^(β) ^(k) ^(T) ^(x)] where Q(β_(k)) denotes a probability density function (pdf) over the parameters β and E_(Q)[ . . . ] denotes an expectation with respect to Q. 